Detecting fly height of a head over a storage medium

ABSTRACT

One embodiment features a method, apparatus, and computer-readable media comprising receiving a pulse generated in response to a transition of a head over a predetermined pattern on a storage medium; measuring a first amplitude of the pulse at a first predetermined time and one or more second amplitudes of the pulse at respective second predetermined times; and calculating a distance between the head and the storage medium based on a function of the first and second amplitudes. Another embodiment features a method, apparatus, and computer-readable media comprising receiving a pulse generated in response to a transition of a head over a predetermined pattern on a storage medium; measuring a first amplitude of a power spectrum of the pulse at a first predetermined frequency and a second amplitude of the power spectrum of the pulse at respective second predetermined frequencies; and calculating a distance between the head and the storage medium based on a function of the first and second amplitudes.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of U.S. Provisional PatentApplication Ser. No. 60/457,660 entitled “Methods for Detecting FlyHeight of Recording Heads on Hard Disk Drives,” filed Mar. 25, 2003, thedisclosure thereof incorporated by reference herein in its entirety.

BACKGROUND

The present invention relates generally to transferring data to and fromstorage media for storing the data. More particularly, the presentinvention relates to detecting the fly height of a head over a storagemedium.

In storage media systems, it is important to maintain the fly height ofthe head within a prescribed region. If the fly height is too great, thesignals transmitted and read by the head will be too weak for accuratedata storage and retrieval. If the fly height is too small, the head canphysically contact the medium, causing physical damage to the medium andloss of the data stored on the medium.

Methods for detecting fly height generally employ a known patternwritten on the storage medium. In response to the pattern, the headproduces one or more pulses. One conventional method to detect flyheight measures the peak amplitude of the pulse. Another conventionalmethod is to measure the duration of the pulse, for example at itshalf-amplitude point. Still another method involves measuring the areaunder the pulse. These method are unreliable because the amplitude ofthe pulse, and the area under the pulse, are affected unpredictably byfactors such as the gain of the storage system.

SUMMARY

In general, in one aspect, the invention features a data storage systemcomprising a storage medium; a head; a pulse circuit adapted to generatea pulse in response to a transition of the head over a predeterminedpattern on the storage medium; a measurement circuit adapted todetermine a first amplitude of the pulse at a first predetermined timeand one or more second amplitudes of the pulse at respective secondpredetermined times; a calculation circuit adapted to provide a signalrepresenting a distance between the head and the storage medium based ona function of the first and second amplitudes; and a head controlleradapted to control the distance between the head and the storage mediumbased on the signal provided by the calculation circuit.

Particular implementations can include one or more of the followingfeatures. The function of the first and second amplitudes is a ratio ofthe first and second amplitudes. The function of the first and secondamplitudes is a ratio of the first amplitude to a sum of the secondamplitudes. The function of the first and second amplitudes is alogarithm of a ratio of the first amplitude to a sum of the secondamplitudes. A plurality of symbols of data are stored on the storagemedium; the measurement circuit takes samples of the pulse at a baudrate of the symbols of the data; the first amplitude is determined fromthe one of the samples nearest a maximum amplitude of the pulse; and thesecond amplitudes comprise a previous amplitude determined from the oneof the samples preceding the one of the samples nearest the maximumamplitude of the pulse, and a succeeding amplitude determined from theone of the samples succeeding the one of the samples nearest the maximumamplitude of the pulse. A plurality of symbols of data are stored on thestorage medium; the measurement circuit takes samples of the pulse at abaud rate of the symbols of the data; the first amplitude is determinedfrom the one of the samples nearest a maximum amplitude of the pulse;and the second amplitudes comprise an immediately previous amplitudedetermined from the one of the samples immediately preceding the one ofthe samples nearest the maximum amplitude of the pulse, and animmediately succeeding amplitude determined from the one of the samplesimmediately succeeding the one of the samples nearest the maximumamplitude of the pulse. A plurality of symbols of data are stored on thestorage medium; the measurement circuit takes samples of the pulse at ntimes the baud rate of the symbols of the data, where n>1; the firstamplitude is determined from the one of the samples nearest a maximumamplitude of the pulse; and the second amplitudes comprise a previousamplitude determined from the one of the samples preceding the one ofthe samples nearest the maximum amplitude of the pulse, and a succeedingamplitude determined from the one of the samples succeeding the one ofthe samples nearest the maximum amplitude of the pulse. A plurality ofsymbols of data are stored on the storage medium; wherein themeasurement circuit takes samples of the pulse at n times the baud rateof the symbols of the data, where n>1; wherein the first amplitude isdetermined from the one of the samples nearest a maximum amplitude ofthe pulse; and wherein the second amplitudes comprise a previousamplitude determined from the one of the samples immediately precedingthe n−1 of the samples immediately preceding the one of the samplesnearest the maximum amplitude of the pulse, and a succeeding amplitudedetermined from the one of the samples immediately succeeding the n−1 ofthe samples immediately succeeding the one of the samples nearest themaximum amplitude of the pulse.

In general, in one aspect, the invention features an apparatus fordetermining a distance between a head and a storage medium, theapparatus comprising a pulse circuit adapted to generate a pulse inresponse to a transition of the head over a predetermined pattern on thestorage medium; a measurement circuit adapted to determine a firstamplitude of the pulse at a first predetermined time and one or moresecond amplitudes of the pulse at respective second predetermined times;and a calculation circuit adapted to provide a signal representing thedistance between the head and the storage medium based on a function ofthe first and second amplitudes.

Particular implementations can include one or more of the followingfeatures. The function of the first and second amplitudes is a ratio ofthe first and second amplitudes. The function of the first and secondamplitudes is a ratio of the first amplitude to a sum of the secondamplitudes. The function of the first and second amplitudes is alogarithm of a ratio of the first amplitude to a sum of the secondamplitudes. A plurality of symbols of data are stored on the storagemedium; the measurement circuit takes samples of the pulse at a baudrate of the symbols of the data; the first amplitude is determined fromthe one of the samples nearest a maximum amplitude of the pulse; and thesecond amplitudes comprise a previous amplitude determined from the oneof the samples preceding the one of the samples nearest the maximumamplitude of the pulse, and a succeeding amplitude determined from theone of the samples succeeding the one of the samples nearest the maximumamplitude of the pulse. A plurality of symbols of data are stored on thestorage medium; the measurement circuit takes samples of the pulse at abaud rate of the symbols of the data; the first amplitude is determinedfrom the one of the samples nearest a maximum amplitude of the pulse;and the second amplitudes comprise an immediately previous amplitudedetermined from the one of the samples immediately preceding the one ofthe samples nearest the maximum amplitude of the pulse, and animmediately succeeding amplitude determined from the one of the samplesimmediately succeeding the one of the samples nearest the maximumamplitude of the pulse. A plurality of symbols of data are stored on thestorage medium; the measurement circuit takes samples of the pulse at ntimes the baud rate of the symbols of the data, where n>1; the firstamplitude is determined from the one of the samples nearest a maximumamplitude of the pulse; and the second amplitudes comprise a previousamplitude determined from the one of the samples preceding the one ofthe samples nearest the maximum amplitude of the pulse, and a succeedingamplitude determined from the one of the samples succeeding the one ofthe samples nearest the maximum amplitude of the pulse. A plurality ofsymbols of data are stored on the storage medium; the measurementcircuit takes samples of the pulse at n times the baud rate of thesymbols of the data, where n>1; the first amplitude is determined fromthe one of the samples nearest a maximum amplitude of the pulse; and thesecond amplitudes comprise a previous amplitude determined from the oneof the samples immediately preceding the n−1 of the samples immediatelypreceding the one of the samples nearest the maximum amplitude of thepulse, and a succeeding amplitude determined from the one of the samplesimmediately succeeding the n−1 of the samples immediately succeeding theone of the samples nearest the maximum amplitude of the pulse.

In general, in one aspect, the invention features an integrated circuitfor determining a distance between a head and a storage medium, theintegrated circuit comprising a measurement circuit adapted to receive apulse from the head in response to a transition of the head over apredetermined pattern on the storage medium, and adapted to determine afirst amplitude of the pulse at a first predetermined time and one ormore second amplitudes of the pulse at respective second predeterminedtimes; and a calculation circuit adapted to provide a signalrepresenting the distance between the head and the storage medium basedon a function of the first and second amplitudes.

Particular implementations can include one or more of the followingfeatures. The function of the first and second amplitudes is a ratio ofthe first and second amplitudes. The function of the first and secondamplitudes is a ratio of the first amplitude to a sum of the secondamplitudes. The function of the first and second amplitudes is alogarithm of a ratio of the first amplitude to a sum of the secondamplitudes. A plurality of symbols of data are stored on the storagemedium; the measurement circuit takes samples of the pulse at a baudrate of the symbols of the data; the first amplitude is determined fromthe one of the samples nearest a maximum amplitude of the pulse; and thesecond amplitudes comprise a previous amplitude determined from the oneof the samples preceding the one of the samples nearest the maximumamplitude of the pulse, and a succeeding amplitude determined from theone of the samples succeeding the one of the samples nearest the maximumamplitude of the pulse. A plurality of symbols of data are stored on thestorage medium; the measurement circuit takes samples of the pulse at abaud rate of the symbols of the data; the first amplitude is determinedfrom the one of the samples nearest a maximum amplitude of the pulse;and the second amplitudes comprise an immediately previous amplitudedetermined from the one of the samples immediately preceding the one ofthe samples nearest the maximum amplitude of the pulse, and animmediately succeeding amplitude determined from the one of the samplesimmediately succeeding the one of the samples nearest the maximumamplitude of the pulse. A plurality of symbols of data are stored on thestorage medium; the measurement circuit takes samples of the pulse at ntimes the baud rate of the symbols of the data, where n>1; the firstamplitude is determined from the one of the samples nearest a maximumamplitude of the pulse; and the second amplitudes comprise a previousamplitude determined from the one of the samples preceding the one ofthe samples nearest the maximum amplitude of the pulse, and a succeedingamplitude determined from the one of the samples succeeding the one ofthe samples nearest the maximum amplitude of the pulse. A plurality ofsymbols of data are stored on the storage medium; the measurementcircuit takes samples of the pulse at n times the baud rate of thesymbols of the data, where n>1; the first amplitude is determined fromthe one of the samples nearest a maximum amplitude of the pulse; and thesecond amplitudes comprise a previous amplitude determined from the oneof the samples immediately preceding the n−1 of the samples immediatelypreceding the one of the samples nearest the maximum amplitude of thepulse, and a succeeding amplitude determined from the one of the samplesimmediately succeeding the n−1 of the samples immediately succeeding theone of the samples nearest the maximum amplitude of the pulse.

In general, in one aspect, the invention features a method, apparatus,and computer-readable media comprising receiving a pulse generated inresponse to a transition of a head over a predetermined pattern on astorage medium; measuring a first amplitude of the pulse at a firstpredetermined time and one or more second amplitudes of the pulse atrespective second predetermined times; and calculating a distancebetween the head and the storage medium based on a function of the firstand second amplitudes.

Particular implementations can include one or more of the followingfeatures. The function of the first and second amplitudes is a ratio ofthe first and second amplitudes. The function of the first and secondamplitudes is a ratio of the first amplitude to a sum of the secondamplitudes. The function of the first and second amplitudes is alogarithm of a ratio of the first amplitude to a sum of the secondamplitudes. A plurality of symbols of data are stored on the storagemedium, further comprising taking samples of the pulse at a baud rate ofthe symbols of the data; wherein the first amplitude is determined fromthe one of the samples nearest a maximum amplitude of the pulse; andwherein the second amplitudes comprise a previous amplitude determinedfrom the one of the samples preceding the one of the samples nearest themaximum amplitude of the pulse, and a succeeding amplitude determinedfrom the one of the samples succeeding the one of the samples nearestthe maximum amplitude of the pulse. A plurality of symbols of data arestored on the storage medium, further comprising taking samples of thepulse at a baud rate of the symbols of the data; wherein the firstamplitude is determined from the one of the samples nearest a maximumamplitude of the pulse; and wherein the second amplitudes comprise animmediately previous amplitude determined from the one of the samplesimmediately preceding the one of the samples nearest the maximumamplitude of the pulse, and an immediately succeeding amplitudedetermined from the one of the samples immediately succeeding the one ofthe samples nearest the maximum amplitude of the pulse. A plurality ofsymbols of data are stored on the storage medium, further comprisingtaking samples of the pulse at n times the baud rate of the symbols ofthe data, where n>1; wherein the first amplitude is determined from theone of the samples nearest a maximum amplitude of the pulse; and whereinthe second amplitudes comprise a previous amplitude determined from theone of the samples preceding the one of the samples nearest the maximumamplitude of the pulse, and a succeeding amplitude determined from theone of the samples succeeding the one of the samples nearest the maximumamplitude of the pulse. A plurality of symbols of data are stored on thestorage medium, further comprising wherein the measurement circuit takessamples of the pulse at n times the baud rate of the symbols of thedata, where n>1; wherein the first amplitude is determined from the oneof the samples nearest a maximum amplitude of the pulse; and wherein thesecond amplitudes comprise a previous amplitude determined from the oneof the samples immediately preceding the n−1 of the samples immediatelypreceding the one of the samples nearest the maximum amplitude of thepulse, and a succeeding amplitude determined from the one of the samplesimmediately succeeding the n−1 of the samples immediately succeeding theone of the samples nearest the maximum amplitude of the pulse.Implementations comprise controlling the distance between the head andthe storage medium based on the calculated distance between the head andthe storage medium. Implementations comprise generating the pulse inresponse to a transition of a head over a predetermined pattern on astorage medium.

In general, in one aspect, the invention features a data storage systemcomprising a storage medium; a head; a pulse circuit adapted to generatea pulse in response to a transition of the head over a predeterminedpattern on the storage medium; a measurement circuit adapted todetermine a first amplitude of a power spectrum of the pulse at a firstpredetermined frequency and a second amplitude of the power spectrum ofthe pulse at respective second predetermined frequencies; and acalculation circuit adapted to provide a signal representing a distancebetween the head and the storage medium based on a function of the firstand second amplitudes; and a head controller adapted to control thedistance between the head and the storage medium based on the signalprovided by the calculation circuit.

Particular implementations can include one or more of the followingfeatures. The function of the first and second amplitudes is a ratio ofthe first and second amplitudes. The function of the first and secondamplitudes is a logarithm of a ratio of the first and second amplitudes.A sequence of symbols of data having first and third harmonics is storedon the storage medium; the first amplitude is determined at the firstharmonic of the power spectrum of the pulse; and the second amplitude isdetermined at the third harmonic of the power spectrum of the pulse.

In general, in one aspect, the invention features an apparatus forcontrolling a head in a data storage system comprising a storage medium,the apparatus comprising a pulse circuit adapted to generate a pulse inresponse to a transition of the head over a predetermined pattern on thestorage medium; a measurement circuit adapted to determine a firstamplitude of a power spectrum of the pulse at a first predeterminedfrequency and a second amplitude of the power spectrum of the pulse atrespective second predetermined frequencies; and a calculation circuitadapted to provide a signal representing a distance between the head andthe storage medium based on a function of the first and secondamplitudes.

Particular implementations can include one or more of the followingfeatures. The function of the first and second amplitudes is a ratio ofthe first and second amplitudes. The function of the first and secondamplitudes is a logarithm of a ratio of the first and second amplitudes.A sequence of symbols of data having first and third harmonics is storedon the storage medium; the first amplitude is determined at the firstharmonic of the power spectrum of the pulse; and the second amplitude isdetermined at the third harmonic of the power spectrum of the pulse.

In general, in one aspect, the invention features an integrated circuitfor controlling a head in a data storage system comprising a storagemedium, the integrated circuit comprising a measurement circuit adaptedto receive a pulse in response to a transition of the head over apredetermined pattern on the storage medium, and adapted to determine afirst amplitude of a power spectrum of the pulse at a firstpredetermined frequency and a second amplitude of the power spectrum ofthe pulse at respective second predetermined frequencies; and acalculation circuit adapted to provide a signal representing a distancebetween the head and the storage medium based on a function of the firstand second amplitudes.

Particular implementations can include one or more of the followingfeatures. The function of the first and second amplitudes is a ratio ofthe first and second amplitudes. The function of the first and secondamplitudes is a logarithm of a ratio of the first and second amplitudes.A sequence of symbols of data having first and third harmonics is storedon the storage medium; wherein the first amplitude is determined at thefirst harmonic of the power spectrum of the pulse; and wherein thesecond amplitude is determined at the third harmonic of the powerspectrum of the pulse.

In general, in one aspect, the invention features a method, apparatus,and computer-readable media comprising receiving a pulse generated inresponse to a transition of a head over a predetermined pattern on astorage medium; measuring a first amplitude of a power spectrum of thepulse at a first predetermined frequency and a second amplitude of thepower spectrum of the pulse at respective second predeterminedfrequencies; and calculating a distance between the head and the storagemedium based on a function of the first and second amplitudes.

Particular implementations can include one or more of the followingfeatures. The function of the first and second amplitudes is a ratio ofthe first and second amplitudes. The function of the first and secondamplitudes is a logarithm of a ratio of the first and second amplitudes.A sequence of symbols of data having first and third harmonics is storedon the storage medium; wherein the first amplitude is determined at thefirst harmonic of the power spectrum of the pulse; and wherein thesecond amplitude is determined at the third harmonic of the powerspectrum of the pulse. Implementations comprise controlling a distancebetween the head and the storage medium based on the distance betweenthe head and the storage medium determined by the calculation circuit.generating the pulse in response to a transition of a head over apredetermined pattern on a storage medium.

The details of one or more implementations are set forth in theaccompanying drawings and the description below. Other features will beapparent from the description and drawings, and from the claims.

DESCRIPTION OF DRAWINGS

FIG. 1 shows a data storage system comprising a data storage medium anda servo according to a preferred embodiment.

FIG. 2 shows a process that can be implemented by the data storagesystem of FIG. 1 to detect fly height in the time domain according to apreferred embodiment.

FIG. 3 shows a pulse generated in response to the transition of a headover a predetermined pattern on a storage medium.

FIG. 4 shows how the peak-to-side ratio of a pulse varies with channelbit density (CBD).

FIG. 5 shows a process that can be implemented by data storage system todetect fly height in the frequency domain according to a preferredembodiment.

FIG. 6 shows the power spectrum of a pulse generated in response to thetransition of a head over a predetermined pattern on a storage medium.

FIG. 7 shows two power spectra and for a single pulse.

FIG. 8 shows the power spectra for different input data patterns.

FIG. 9 shows a comparison of some embodiments of the present inventionby presenting the computed ratio as a function of CBD.

The leading digit(s) of each reference numeral used in thisspecification indicates the number of the drawing in which the referencenumeral first appears.

DETAILED DESCRIPTION

Embodiments of the present invention detect fly height by determiningchannel bit density (CBD), which is given byCBD=PW ₅₀ /T  (1)where T is the symbol duration and PW₅₀ is the duration of the pulse atits half-amplitude point, which for an inductive head is approximated byPW ₅₀≈√{square root over (g ²+4(d+a)²)}  (2a)and which for a magneto-resistive head is approximated byPW ₅₀≈√{square root over (2g ²+4(d+a)²)}  (2b)where g is the gap of the head, a is the transition length, and d is thefly height. Once CBD is known, equations (1) and (2) can be used todetermine the fly height d.

When the head encounters a transition on the disk, the head generates asignal s(t) that can be modeled as a Lorentzian pulse

$\begin{matrix}{{s(t)} = \frac{1}{1 + \left( \frac{2t}{{PW}_{50}} \right)^{2}}} & (3)\end{matrix}$where t is the time variable. This signal can be written as

$\begin{matrix}{{y(t)} = {{\sum\limits_{m}\;{\left( {u_{m} - u_{m - 1}} \right){s\left( {t - {mT}} \right)}}} + {n(t)}}} & (4)\end{matrix}$where u_(m) is the data stream written onto the disk, spaced by time T,and where n(t) is the noise in the signal. After sampling, thediscrete-time signal can be written as

$\begin{matrix}{y_{k} = {{y({kT})} = {{\sum\limits_{m}\;{\left( {u_{m} - u_{m - 1}} \right){s\left( {{kT} - {mT}} \right)}}} + {n({kT})}}}} & (5)\end{matrix}$Clearly, with the same input data, y_(k) depends on s(t), which is afunction of fly height d.

FIG. 1 shows a data storage system 100 comprising a data storage medium102 and a servo 104 according to a preferred embodiment. For example,data storage medium 102 can be a magnetic hard disc and servo 104 can bea hard disc servo. However, storage medium 102 can also be an opticaldisc or other type of storage media. Servo 104 is connected by an arm114 to a head 106 for transferring data to and/or from storage medium102. Servo 104 comprises a pulse circuit 108, a measurement circuit 110,a calculation circuit 112, and a head controller 116.

According to one embodiment, the fly height is detected in the timedomain by determining a function of two or more samples of the pulse.FIG. 2 shows a process 200 that can be implemented by data storagesystem 100 to detect fly height in the time domain according to apreferred embodiment. Pulse circuit 108 generates a pulse in response toeach transition of the head over a predetermined pattern on the storagemedium (step 202). Such a pulse 302 is shown in FIG. 3.

Measurement circuit 110 determines two or more amplitudes of the pulseat respective different times (step 204). Calculation circuit 112determines a distance between the head and the storage medium based on afunction of the amplitudes (step 206).

Referring to FIG. 3, measurement circuit 110 preferably determines anamplitude y_(peak) of the peak of pulse 302, and amplitudes y_(side,L)and y_(side,R) on the left and right sides, respectively, of pulse 302.Calculation circuit 112 computes a peak-to-side ratio r_(ps), preferablyover many pulses 302, according to

$\begin{matrix}{r_{ps} = {- {\log\left( {\log\left( \frac{A{\sum\;{y_{peak}}}}{{\sum\;{y_{{side},L}}} + {\sum\;{y_{{side},R}}}} \right)} \right)}}} & (6)\end{matrix}$where A is a constant. For example, for a 12Tpattern (six ones followedby six zeroes), A=2. Of course, other patterns, and other functions ofthese amplitudes can be used to compute peak-to-side ratio r_(ps). Inother embodiments, peak-to-side ratio r_(ps) is computed simply as theratio of equation (6) without the logarithm function.

Alternatively, measurement circuit determines amplitude y_(peak) of thepeak of pulse 302, and an amplitude y_(side) of one of the sides ofpulse 302. Calculation circuit 112 computes peak-to-side ratio r_(ps),preferably over many pulses 302, according to

$\begin{matrix}{r_{ps} = {- {\log\left( {\log\left( \frac{B{\sum\;{y_{peak}}}}{\sum\;{y_{side}}} \right)} \right)}}} & (7)\end{matrix}$where B is a constant. For example, for a 6T pattern (six ones followedby six zeroes), B=1, and for a 12T pattern (12 ones followed by 12zeroes), B=2. Of course, other patterns, and other functions of theseamplitudes can be used to compute peak-to-side ratio r_(ps). In otherembodiments, peak-to-side ratio r_(ps) is computed simply as the ratioof equation (7) without the logarithm function. In any such embodiment,the peak-to-side ratio r_(ps) is preferably determined for multiplepulses, and the results are combined, for example by averaging orweighted averaging.

In a preferred embodiment, measurement circuit 110 takes samples of thepulse at a baud rate of the symbols of the data read from data storagemedium 102, and determines two or more amplitudes of the pulse using thesamples. Referring again to FIG. 3, amplitude y_(peak) is determinedfrom the sample 304 nearest the peak of pulse 302, and amplitudesy_(side,L) and y_(side,R) are determined from samples preceding (306)and succeeding (308) that sample, respectively. Samples 306 and 308 canimmediately precede and succeed sample 304, or can be separated fromsample 304 by one or more other samples.

Head controller 116 controls the distance between the head and thestorage medium based on the peak-to side ratio r_(ps). The peak-to-sideratio is a good measurement of CBD because it is independent of factorssuch as the gain of the storage system. FIG. 4 shows how the ratiovaries with CBD. Referring to FIG. 4, graph 402 shows four peak samples(represented by circles) and six side samples (represented by triangles)for a pulse having CBD=1.0. Graph 404 shows four peak samples(represented by circles) and six side samples (represented by triangles)for a pulse having CBD=2.5. Because pulse width narrows with reducedCBD, the peak-to-side ratio increases, as is evident from FIG. 4.

According to one embodiment, the fly height is detected in the frequencydomain by determining a function of two or more samples of the powerspectrum of the pulse. FIG. 5 shows a process 500 that can beimplemented by data storage system 100 to detect fly height in thefrequency domain according to a preferred embodiment. Pulse circuit 108generates a pulse in response to each transition of the head over apredetermined pattern on the storage medium (step 502). Such a pulse hasa power spectrum 602 as shown in FIG. 6.

Measurement circuit 110 determines two or more amplitudes of the powerspectrum at respective different frequencies (step 504). Calculationcircuit 112 determines a distance between the head and the storagemedium based on a function of the amplitudes (step 506).

Preferably measurement circuit 110 makes this measurement as the headpasses over a known sequence or pattern of symbols stored on the storagemedium. Preferably the pattern produces a harmonic at a high frequencyand a harmonic at a low frequency so the ratio between the amplitudes ofpower spectrum 602 at those harmonics is large, For example, a patternhaving first and third harmonics is preferable. Such a pattern is the 8Tpattern (four ones followed by four zeroes), where the harmonics occurat ⅛T and ⅜T, where T is the symbol duration.

Measurement circuit 110 preferably measures the amplitudes of powerspectrum 602 at the first and third harmonic frequencies, respectively.Referring to FIG. 6, measurement circuit 110 preferably measures anamplitude y1 of the first harmonic of power spectrum 602 and measures anamplitude y3 of the third harmonic of power spectrum 602. Calculationcircuit 112 computes a ratio r_(fft) of the amplitudes, preferably overmany pulses 302, according to

$\begin{matrix}{r_{fft} = {\log\left( \frac{{{\sum\limits_{k}\;{y_{k}{\mathbb{e}}^{{- j}\; k\frac{\pi}{4}}}}}^{2}}{{{\sum\limits_{k}\;{y_{k}{\mathbb{e}}^{{- j}\; k\frac{3\pi}{4}}}}}^{2}} \right)}} & (8)\end{matrix}$Of course, other functions of these amplitudes can be used to computeratio r_(fft). In other embodiments, ratio r_(fft) is computed simply asthe ratio of equation (8) without the logarithm function. In any suchembodiment, the ratio r_(fft) is preferably determined for multiplepulses, and the results are combined, for example by averaging orweighted averaging.

This operation can be implemented as a fast Fourier transform (FFT)using two filters for each frequency component (one for the sinecomponent, and the other one for the cosine component) according to

$\begin{matrix}{{\sum\limits_{k}\;{y_{k}{\mathbb{e}}^{{- j}\; k\frac{\pi}{4}}}} = {{\sum\limits_{k}\;{y_{k}{\cos\left( {{- k}\frac{\pi}{4}} \right)}}} + {j{\sum\limits_{k}\;{y_{k}{\sin\left( {{- k}\frac{\pi}{4}} \right)}}}}}} & (9)\end{matrix}$The full FFT operation can be simplified to compute only the cosine (orthe sine) component according to

$\begin{matrix}{r_{{fft},\mspace{14mu}{real}} = {\frac{1}{2}{\log\left( \frac{{{\sum\limits_{k}\;{y_{k}{\cos\left( {{- k}\frac{\pi}{4}} \right)}}}}^{2}}{{{\sum\limits_{k}\;{y_{k}{\cos\left( {{- k}\frac{3\pi}{4}} \right)}}}}^{2}} \right)}}} & (10)\end{matrix}$Different input patterns produce different power spectra 602. Thereforeany other pattern having a power spectrum that changes with CBD can beused.

Head controller 116 controls the distance between the head and thestorage medium based on the ratio r_(fft). The ratio r_(fft) is a goodmeasurement of CBD because it is independent of factors such as the gainof the storage system. FIG. 7 shows two power spectra 702 and 704 for asingle pulse 302. Power spectrum 702 is for a pulse 302 having CBD=1.0.Power spectrum 704 is for a pulse 302 having CBD=2.5. From FIG. 7 it isclear that the ratio of the amplitudes of the first and third harmonicsof a symbol pattern changes substantially with CBD.

FIG. 8 shows the power spectra for different input data patterns.Spectrum 802 is for an 8T pattern. Spectrum 804 is for a 6T pattern.Spectrum 806 is for a 4T pattern. From FIG. 8 it is clear that the 8Tpattern has well-separated first and third harmonics, and so iswell-suited for use with the present invention.

However, the 4T pattern is already present on many storage media, forexample as the preamble for hard disk drives. In one embodimentwell-suited for use with 4T patterns, measurement circuit 110 takessamples of the pulse at twice the baud rate of the symbols of the dataread from data storage medium 102. This oversampling produces a powerspectrum for the 4T pattern that resembles the power spectrum of the 8Tpattern, with well-separated first and third harmonics. Of course, otheroversampling multiples can be used with the 4T patterns and otherpatterns. For two-time oversampling, equations (5), (8) and (10) arereplaced by equations (11), (12), and (13), respectively, given below.

$\begin{matrix}{y_{k}^{\prime} = {{y\left( {k\frac{T}{2}\_} \right)} = {{\sum\limits_{k}{\left( {u_{m} - u_{m - 1}} \right){s\left( {{k\frac{T}{2}} - {mT}} \right)}}} + {n({kT})}}}} & (11) \\{r_{fft}^{\prime} = {\log\left( \frac{{{\sum\limits_{k}\;{y_{k}^{\prime}{\mathbb{e}}^{{- j}\; k\frac{\pi}{4}}}}}^{2}}{{{\sum\limits_{k}\;{y_{k}^{\prime}{\mathbb{e}}^{{- j}\; k\frac{3\pi}{4}}}}}^{2}} \right)}} & (12) \\{r_{{fft},\mspace{14mu}{real}}^{\prime} = {\frac{1}{2}{\log\left( \frac{{{\sum\limits_{k}\;{y_{k}^{\prime}{\cos\left( {{- k}\frac{\pi}{4}} \right)}}}}^{2}}{{{\sum\limits_{k}\;{y_{k}^{\prime}{\cos\left( {{- k}\frac{3\pi}{4}} \right)}}}}^{2}} \right)}}} & (13)\end{matrix}$

FIG. 9 shows a comparison of some embodiments of the present inventionby presenting the computed ratio as a function of CBD. Curve 902, withdata points shown as triangles, is for a peak-to-side ratio of a 12Tpattern. Curve 904, with data points shown as circles, is for apeak-to-side ratio of a 6T pattern. Curve 906, with data points notshown, is for a power spectrum ratio r_(fft, Real). Curve 908, with datapoints shown as asterisks, is for a power spectrum ratio r_(fft). Curve910, with data points shown as squares, is for a power spectrum ratior_(fft) for 2× oversampling.

The invention can be implemented in digital electronic circuitry, or incomputer hardware, firmware, software, or in combinations of them.Apparatus of the invention can be implemented in a computer programproduct tangibly embodied in a machine-readable storage device forexecution by a programmable processor; and method steps of the inventioncan be performed by a programmable processor executing a program ofinstructions to perform functions of the invention by operating on inputdata and generating output. The invention can be implementedadvantageously in one or more computer programs that are executable on aprogrammable system including at least one programmable processorcoupled to receive data and instructions from, and to transmit data andinstructions to, a data storage system, at least one input device, andat least one output device. Each computer program can be implemented ina high-level procedural or object-oriented programming language, or inassembly or machine language if desired; and in any case, the languagecan be a compiled or interpreted language. Suitable processors include,by way of example, both general and special purpose microprocessors.Generally, a processor will receive instructions and data from aread-only memory and/or a random access memory. Generally, a computerwill include one or more mass storage devices for storing data files;such devices include magnetic disks, such as internal hard disks andremovable disks; magneto-optical disks; and optical disks. Storagedevices suitable for tangibly embodying computer program instructionsand data include all forms of non-volatile memory, including by way ofexample semiconductor memory devices, such as EPROM, EEPROM, and flashmemory devices; magnetic disks such as internal hard disks and removabledisks; magneto-optical disks; and CD-ROM disks. Any of the foregoing canbe supplemented by, or incorporated in, ASICs (application-specificintegrated circuits).

A number of implementations of the invention have been described.Nevertheless, it will be understood that various modifications may bemade without departing from the spirit and scope of the invention.Accordingly, other implementations are within the scope of the followingclaims.

1. A data storage system comprising: a storage medium; a head; a pulsecircuit adapted to generate a pulse in response to a transition of thehead over a predetermined pattern on the storage medium; a measurementcircuit adapted to determine a first amplitude of the pulse at a firstpredetermined time and one or more second amplitudes of the pulse atrespective second predetermined times; a calculation circuit adapted toprovide a signal representing a distance between the head and thestorage medium based on a function of the first and second amplitudes;and a head controller adapted to control the distance between the headand the storage medium based on the signal provided by the calculationcircuit, wherein the function of the first and second amplitudes is aratio of the first amplitude to a sum of at least two second amplitudes.2. A data storage system comprising: a storage medium; a head; a pulsecircuit adapted to generate a pulse in response to a transition of thehead over a predetermined pattern on the storage medium; a measurementcircuit adapted to determine a first amplitude of the pulse at a firstpredetermined time and one or more second amplitudes of the pulse atrespective second predetermined times; a calculation circuit adapted toprovide a signal representing a distance between the head and thestorage medium based on a function of the first and second amplitudes;and a head controller adapted to control the distance between the headand the storage medium based on the signal provided by the calculationcircuit, wherein the function of the first and second amplitudes is alogarithm of a ratio of the first amplitude to a sum of at least twosecond amplitudes.
 3. A data storage system comprising: a storagemedium; a head; a pulse circuit adapted to generate a pulse in responseto a transition of the head over a predetermined pattern on the storagemedium; a measurement circuit adapted to determine a first amplitude ofthe pulse at a first predetermined time and one or more secondamplitudes of the pulse at respective second predetermined times; acalculation circuit adapted to provide a signal representing a distancebetween the head and the storage medium based on a function of the firstand second amplitudes; and a head controller adapted to control thedistance between the head and the storage medium based on the signalprovided by the calculation circuit, wherein a plurality of symbols ofdata are stored on the storage medium; wherein the measurement circuittakes samples of the pulse at a baud rate of the symbols of the data;wherein the first amplitude is determined from the one of the samplesnearest a maximum amplitude of the pulse; and wherein the secondamplitudes comprise a previous amplitude determined from the one of thesamples preceding the one of the samples nearest the maximum amplitudeof the pulse, and a succeeding amplitude determined from the one of thesamples succeeding the one of the samples nearest the maximum amplitudeof the pulse.
 4. The data storage system of claim 3: wherein thefunction of the first and second amplitudes is a ratio of the first andsecond amplitudes.
 5. A data storage system comprising: a storagemedium; a head; a pulse circuit adapted to generate a pulse in responseto a transition of the head over a predetermined pattern on the storagemedium; a measurement circuit adapted to determine a first amplitude ofthe pulse at a first predetermined time and one or more secondamplitudes of the pulse at respective second predetermined times; acalculation circuit adapted to provide a signal representing a distancebetween the head and the storage medium based on a function of the firstand second amplitudes; and a head controller adapted to control thedistance between the head and the storage medium based on the signalprovided by the calculation circuit, wherein a plurality of symbols ofdata are stored on the storage medium; wherein the measurement circuittakes samples of the pulse at a baud rate of the symbols of the data;wherein the first amplitude is determined from the one of the samplesnearest a maximum amplitude of the pulse; and wherein the secondamplitudes comprise an immediately previous amplitude determined fromthe one of the samples immediately preceding the one of the samplesnearest the maximum amplitude of the pulse, and an immediatelysucceeding amplitude determined from the one of the samples immediatelysucceeding the one of the samples nearest the maximum amplitude of thepulse.
 6. A data storage system comprising: a storage medium; a head; apulse circuit adapted to generate a pulse in response to a transition ofthe head over a predetermined pattern on the storage medium; ameasurement circuit adapted to determine a first amplitude of the pulseat a first predetermined time and one or more second amplitudes of thepulse at respective second predetermined times; a calculation circuitadapted to provide a signal representing a distance between the head andthe storage medium based on a function of the first and secondamplitudes; and a head controller adapted to control the distancebetween the head and the storage medium based on the signal provided bythe calculation circuit, wherein a plurality of symbols of data arestored on the storage medium; wherein the measurement circuit takessamples of the pulse at n times the baud rate of the symbols of thedata, where n is an integer greater than 1; wherein the first amplitudeis determined from the one of the samples nearest a maximum amplitude ofthe pulse; and wherein the second amplitudes comprise a previousamplitude determined from the one of the samples preceding the one ofthe samples nearest the maximum amplitude of the pulse, and a succeedingamplitude determined from the one of the samples succeeding the one ofthe samples nearest the maximum amplitude of the pulse.
 7. A datastorage system comprising: a storage medium; a head; a pulse circuitadapted to generate a pulse in response to a transition of the head overa predetermined pattern on the storage medium; a measurement circuitadapted to determine a first amplitude of the pulse at a firstpredetermined time and one or more second amplitudes of the pulse atrespective second predetermined times; a calculation circuit adapted toprovide a signal representing a distance between the head and thestorage medium based on a function of the first and second amplitudes;and a head controller adapted to control the distance between the headand the storage medium based on the signal provided by the calculationcircuit, wherein a plurality of symbols of data are stored on thestorage medium; wherein the measurement circuit takes samples of thepulse at n times the baud rate of the symbols of the data, where n is aninteger greater than 1; wherein the first amplitude is determined fromthe one of the samples nearest a maximum amplitude of the pulse; andwherein the second amplitudes comprise a previous amplitude determinedfrom the one of the samples immediately preceding the n−1 of the samplesimmediately preceding the one of the samples nearest the maximumamplitude of the pulse, and a succeeding amplitude determined from theone of the samples immediately succeeding the n−1 of the samplesimmediately succeeding the one of the samples nearest the maximumamplitude of the pulse.
 8. An apparatus for determining a distancebetween a head and a storage medium, the apparatus comprising: a pulsecircuit adapted to generate a pulse in response to a transition of thehead over a predetermined pattern on the storage medium; a measurementcircuit adapted to determine a first amplitude of the pulse at a firstpredetermined time and one or more second amplitudes of the pulse atrespective second predetermined times; and a calculation circuit adaptedto provide a signal representing the distance between the head and thestorage medium based on a function of the first and second amplitudes,wherein the function of the first and second amplitudes is a ratio ofthe first amplitude to a sum of at least two second amplitudes.
 9. Anapparatus for determining a distance between a head and a storagemedium, the apparatus comprising: a pulse circuit adapted to generate apulse in response to a transition of the head over a predeterminedpattern on the storage medium; a measurement circuit adapted todetermine a first amplitude of the pulse at a first predetermined timeand one or more second amplitudes of the pulse at respective secondpredetermined times; and a calculation circuit adapted to provide asignal representing the distance between the head and the storage mediumbased on a function of the first and second amplitudes, wherein thefunction of the first and second amplitudes is a logarithm of a ratio ofthe first amplitude to a sum of at least two second amplitudes.
 10. Anapparatus for determining a distance between a head and a storagemedium, the apparatus comprising: a pulse circuit adapted to generate apulse in response to a transition of the head over a predeterminedpattern on the storage medium; a measurement circuit adapted todetermine a first amplitude of the pulse at a first predetermined timeand one or more second amplitudes of the pulse at respective secondpredetermined times; and a calculation circuit adapted to provide asignal representing the distance between the head and the storage mediumbased on a function of the first and second amplitudes, wherein aplurality of symbols of data are stored on the storage medium; whereinthe measurement circuit takes samples of the pulse at a baud rate of thesymbols of the data; wherein the first amplitude is determined from theone of the samples nearest a maximum amplitude of the pulse; and whereinthe second amplitudes comprise a previous amplitude determined from theone of the samples preceding the one of the samples nearest the maximumamplitude of the pulse, and a succeeding amplitude determined from theone of the samples succeeding the one of the samples nearest the maximumamplitude of the pulse.
 11. The apparatus of claim 10: wherein thefunction of the first and second amplitudes is a ratio of the first andsecond amplitudes.
 12. An apparatus for determining a distance between ahead and a storage medium, the apparatus comprising: a pulse circuitadapted to generate a pulse in response to a transition of the head overa predetermined pattern on the storage medium; a measurement circuitadapted to determine a first amplitude of the pulse at a firstpredetermined time and one or more second amplitudes of the pulse atrespective second predetermined times; and a calculation circuit adaptedto provide a signal representing the distance between the head and thestorage medium based on a function of the first and second amplitudes,wherein a plurality of symbols of data are stored on the storage medium;wherein the measurement circuit takes samples of the pulse at a baudrate of the symbols of the data; wherein the first amplitude isdetermined from the one of the samples nearest a maximum amplitude ofthe pulse; and wherein the second amplitudes comprise an immediatelyprevious amplitude determined from the one of the samples immediatelypreceding the one of the samples nearest the maximum amplitude of thepulse, and an immediately succeeding amplitude determined from the oneof the samples immediately succeeding the one of the samples nearest themaximum amplitude of the pulse.
 13. An apparatus for determining adistance between a head and a storage medium, the apparatus comprising:a pulse circuit adapted to generate a pulse in response to a transitionof the head over a predetermined pattern on the storage medium; ameasurement circuit adapted to determine a first amplitude of the pulseat a first predetermined time and one or more second amplitudes of thepulse at respective second predetermined times; and a calculationcircuit adapted to provide a signal representing the distance betweenthe head and the storage medium based on a function of the first andsecond amplitudes, wherein a plurality of symbols of data are stored onthe storage medium; wherein the measurement circuit takes samples of thepulse at n times the baud rate of the symbols of the data, where n is aninteger greater than 1; wherein the first amplitude is determined fromthe one of the samples nearest a maximum amplitude of the pulse; andwherein the second amplitudes comprise a previous amplitude determinedfrom the one of the samples preceding the one of the samples nearest themaximum amplitude of the pulse, and a succeeding amplitude determinedfrom the one of the samples succeeding the one of the samples nearestthe maximum amplitude of the pulse.
 14. An apparatus for determining adistance between a head and a storage medium, the apparatus comprising:a pulse circuit adapted to generate a pulse in response to a transitionof the head over a predetermined pattern on the storage medium; ameasurement circuit adapted to determine a first amplitude of the pulseat a first predetermined time and one or more second amplitudes of thepulse at respective second predetermined times; and a calculationcircuit adapted to provide a signal representing the distance betweenthe head and the storage medium based on a function of the first andsecond amplitudes, wherein a plurality of symbols of data are stored onthe storage medium; wherein the measurement circuit takes samples of thepulse at n times the baud rate of the symbols of the data, where n is aninteger greater than 1; wherein the first amplitude is determined fromthe one of the samples nearest a maximum amplitude of the pulse; andwherein the second amplitudes comprise a previous amplitude determinedfrom the one of the samples immediately preceding the n−1 of the samplesimmediately preceding the one of the samples nearest the maximumamplitude of the pulse, and a succeeding amplitude determined from theone of the samples immediately succeeding the n−1 of the samplesimmediately succeeding the one of the samples nearest the maximumamplitude of the pulse.
 15. An integrated circuit for determining adistance between a head and a storage medium, the integrated circuitcomprising: a measurement circuit adapted to receive a pulse from thehead in response to a transition of the head over a predeterminedpattern on the storage medium, and adapted to determine a firstamplitude of the pulse at a first predetermined time and one or moresecond amplitudes of the pulse at respective second predetermined times;and a calculation circuit adapted to provide a signal representing thedistance between the head and the storage medium based on a function ofthe first and second amplitudes, wherein the function of the first andsecond amplitudes is a ratio of the first amplitude to a sum of at leasttwo second amplitudes.
 16. An integrated circuit for determining adistance between a head and a storage medium, the integrated circuitcomprising: a measurement circuit adapted to receive a pulse from thehead in response to a transition of the head over a predeterminedpattern on the storage medium, and adapted to determine a firstamplitude of the pulse at a first predetermined time and one or moresecond amplitudes of the pulse at respective second predetermined times;and a calculation circuit adapted to provide a signal representing thedistance between the head and the storage medium based on a function ofthe first and second amplitudes, wherein the function of the first andsecond amplitudes is a logarithm of a ratio of the first amplitude to asum of at least two second amplitudes.
 17. An integrated circuit fordetermining a distance between a head and a storage medium, theintegrated circuit comprising: a measurement circuit adapted to receivea pulse from the head in response to a transition of the head over apredetermined pattern on the storage medium, and adapted to determine afirst amplitude of the pulse at a first predetermined time and one ormore second amplitudes of the pulse at respective second predeterminedtimes; and a calculation circuit adapted to provide a signalrepresenting the distance between the head and the storage medium basedon a function of the first and second amplitudes, wherein a plurality ofsymbols of data are stored on the storage medium; wherein themeasurement circuit takes samples of the pulse at a baud rate of thesymbols of the data; wherein the first amplitude is determined from theone of the samples nearest a maximum amplitude of the pulse; and whereinthe second amplitudes comprise a previous amplitude determined from theone of the samples preceding the one of the samples nearest the maximumamplitude of the pulse, and a succeeding amplitude determined from theone of the samples succeeding the one of the samples nearest the maximumamplitude of the pulse.
 18. The integrated circuit of claim 17: whereinthe function of the first and second amplitudes is a ratio of the firstand second amplitudes.
 19. An integrated circuit for determining adistance between a head and a storage medium, the integrated circuitcomprising: a measurement circuit adapted to receive a pulse from thehead in response to a transition of the head over a predeterminedpattern on the storage medium, and adapted to determine a firstamplitude of the pulse at a first predetermined time and one or moresecond amplitudes of the pulse at respective second predetermined times;and a calculation circuit adapted to provide a signal representing thedistance between the head and the storage medium based on a function ofthe first and second amplitudes, wherein a plurality of symbols of dataare stored on the storage medium; wherein the measurement circuit takessamples of the pulse at a baud rate of the symbols of the data; whereinthe first amplitude is determined from the one of the samples nearest amaximum amplitude of the pulse; and wherein the second amplitudescomprise an immediately previous amplitude determined from the one ofthe samples immediately preceding the one of the samples nearest themaximum amplitude of the pulse, and an immediately succeeding amplitudedetermined from the one of the samples immediately succeeding the one ofthe samples nearest the maximum amplitude of the pulse.
 20. Anintegrated circuit for determining a distance between a head and astorage medium, the integrated circuit comprising: a measurement circuitadapted to receive a pulse from the head in response to a transition ofthe head over a predetermined pattern on the storage medium, and adaptedto determine a first amplitude of the pulse at a first predeterminedtime and one or more second amplitudes of the pulse at respective secondpredetermined times; and a calculation circuit adapted to provide asignal representing the distance between the head and the storage mediumbased on a function of the first and second amplitudes, wherein aplurality of symbols of data are stored on the storage medium; whereinthe measurement circuit takes samples of the pulse at n times the baudrate of the symbols of the data, where n is an integer greater than 1;wherein the first amplitude is determined from the one of the samplesnearest a maximum amplitude of the pulse; and wherein the secondamplitudes comprise a previous amplitude determined from the one of thesamples preceding the one of the samples nearest the maximum amplitudeof the pulse, and a succeeding amplitude determined from the one of thesamples succeeding the one of the samples nearest the maximum amplitudeof the pulse.
 21. An integrated circuit for determining a distancebetween a head and a storage medium, the integrated circuit comprising:a measurement circuit adapted to receive a pulse from the head inresponse to a transition of the head over a predetermined pattern on thestorage medium, and adapted to determine a first amplitude of the pulseat a first predetermined time and one or more second amplitudes of thepulse at respective second predetermined times; and a calculationcircuit adapted to provide a signal representing the distance betweenthe head and the storage medium based on a function of the first andsecond amplitudes, wherein a plurality of symbols of data are stored onthe storage medium; wherein the measurement circuit takes samples of thepulse at n times the baud rate of the symbols of the data, where n is aninteger greater than 1; wherein the first amplitude is determined fromthe one of the samples nearest a maximum amplitude of the pulse; andwherein the second amplitudes comprise a previous amplitude determinedfrom the one of the samples immediately preceding the n−1 of the samplesimmediately preceding the one of the samples nearest the maximumamplitude of the pulse, and a succeeding amplitude determined from theone of the samples immediately succeeding the n−1 of the samplesimmediately succeeding the one of the samples nearest the maximumamplitude of the pulse.
 22. A data storage system comprising: storagemedium means for storing data; head means for reading the data from thestorage medium means; pulse circuit means for generating a pulse inresponse to a transition of the head means over a predetermined patternon the storage medium means; measurement circuit determining a firstamplitude of the pulse at a first predetermined time and one or moresecond amplitudes of the pulse at respective second predetermined times;calculation circuit means for providing a signal representing a distancebetween the head means and the storage medium means based on a functionof the first and second amplitudes; and head controller means forcontrolling the distance between the head means and the storage mediummeans based on the signal provided by the calculation circuit means,wherein the function of the first and second amplitudes is a ratio ofthe first amplitude to a sum of at least two second amplitudes.
 23. Adata storage system comprising: storage medium means for storing data;head means for reading the data from the storage medium means; pulsecircuit means for generating a pulse in response to a transition of thehead means over a predetermined pattern on the storage medium means;measurement circuit determining a first amplitude of the pulse at afirst predetermined time and one or more second amplitudes of the pulseat respective second predetermined times; calculation circuit means forproviding a signal representing a distance between the head means andthe storage medium means based on a function of the first and secondamplitudes; and head controller means for controlling the distancebetween the head means and the storage medium means based on the signalprovided by the calculation circuit means, wherein the function of thefirst and second amplitudes is a logarithm of a ratio of the firstamplitude to a sum of at least two second amplitudes.
 24. A data storagesystem comprising: storage medium means for storing data; head means forreading the data from the storage medium means; pulse circuit means forgenerating a pulse in response to a transition of the head means over apredetermined pattern on the storage medium means; measurement circuitdetermining a first amplitude of the pulse at a first predetermined timeand one or more second amplitudes of the pulse at respective secondpredetermined times; calculation circuit means for providing a signalrepresenting a distance between the head means and the storage mediummeans based on a function of the first and second amplitudes; and headcontroller means for controlling the distance between the head means andthe storage medium means based on the signal provided by the calculationcircuit means, wherein a plurality of symbols of the data are stored onthe storage medium means; wherein the measurement circuit means takessamples of the pulse at a baud rate of the symbols of the data; whereinthe first amplitude is determined from the one of the samples nearest amaximum amplitude of the pulse, and wherein the second amplitudescomprise a previous amplitude determined from the one of the samplespreceding the one of the samples nearest the maximum amplitude of thepulse, and a succeeding amplitude determined from the one of the samplessucceeding the one of the samples nearest the maximum amplitude of thepulse.
 25. The data storage system of claim 24: wherein the function ofthe first and second amplitudes is a ratio of the first and secondamplitudes.
 26. A data storage system comprising: storage medium meansfor storing data; head means for reading the data from the storagemedium means; pulse circuit means for generating a pulse in response toa transition of the head means over a predetermined pattern on thestorage medium means; measurement circuit determining a first amplitudeof the pulse at a first predetermined time and one or more secondamplitudes of the pulse at respective second predetermined times;calculation circuit means for providing a signal representing a distancebetween the head means and the storage medium means based on a functionof the first and second amplitudes; and head controller means forcontrolling the distance between the head means and the storage mediummeans based on the signal provided by the calculation circuit means,wherein a plurality of symbols of the data are stored on the storagemedium means; wherein the measurement circuit means takes samples of thepulse at a baud rate of the symbols of the data; wherein the firstamplitude is determined from the one of the samples nearest a maximumamplitude of the pulse, and wherein the second amplitudes comprise animmediately previous amplitude determined from the one of the samplesimmediately preceding the one of the samples nearest the maximumamplitude of the pulse, and an immediately succeeding amplitudedetermined from the one of the samples immediately succeeding the one ofthe samples nearest the maximum amplitude of the pulse.
 27. A datastorage system comprising: storage medium means for storing data; headmeans for reading the data from the storage medium means; pulse circuitmeans for generating a pulse in response to a transition of the headmeans over a predetermined pattern on the storage medium means;measurement circuit determining a first amplitude of the pulse at afirst predetermined time and one or more second amplitudes of the pulseat respective second predetermined times; calculation circuit means forproviding a signal representing a distance between the head means andthe storage medium means based on a function of the first and secondamplitudes; and head controller means for controlling the distancebetween the head means and the storage medium means based on the signalprovided by the calculation circuit means, wherein a plurality ofsymbols of the data are stored on the storage medium means; wherein themeasurement circuit means takes samples of the pulse at n times the baudrate of the symbols of the data, where n is an integer greater than 1;wherein the first amplitude is determined from the one of the samplesnearest a maximum amplitude of the pulse, and wherein the secondamplitudes comprise a previous amplitude determined from the one of thesamples preceding the one of the samples nearest the maximum amplitudeof the pulse, and a succeeding amplitude determined from the one of thesamples succeeding the one of the samples nearest the maximum amplitudeof the pulse.
 28. A data storage system comprising: storage medium meansfor storing data; head means for reading the data from the storagemedium means; pulse circuit means for generating a pulse in response toa transition of the head means over a predetermined pattern on thestorage medium means; measurement circuit determining a first amplitudeof the pulse at a first predetermined time and one or more secondamplitudes of the pulse at respective second predetermined times;calculation circuit means for providing a signal representing a distancebetween the head means and the storage medium means based on a functionof the first and second amplitudes; and head controller means forcontrolling the distance between the head means and the storage mediummeans based on the signal provided by the calculation circuit means,wherein a plurality of symbols of the data are stored on the storagemedium means; wherein the measurement circuit means takes samples of thepulse at n times the baud rate of the symbols of the data, where n is aninteger greater than 1; wherein the first amplitude is determined fromthe one of the samples nearest a maximum amplitude of the pulse; andwherein the second amplitudes comprise a previous amplitude determinedfrom the one of the samples immediately preceding the n−1 of the samplesimmediately preceding the one of the samples nearest the maximumamplitude of the pulse, and a succeeding amplitude determined from theone of the samples immediately succeeding the n−1 of the samplesimmediately succeeding the one of the samples nearest the maximumamplitude of the pulse.
 29. An apparatus for determining a distancebetween a head and a storage medium, the apparatus comprising: pulsecircuit means for generating a pulse in response to a transition of thehead over a predetermined pattern on the storage medium; measurementcircuit means for determining a first amplitude of the pulse at a firstpredetermined time and one or more second amplitudes of the pulse atrespective second predetermined times; and calculation circuit means forproviding a signal representing the distance between the head and thestorage medium based on a function of the first and second amplitudes,wherein the function of the first and second amplitudes is a ratio ofthe first amplitude to a sum of at least two second amplitudes.
 30. Anapparatus for determining a distance between a head and a storagemedium, the apparatus comprising: pulse circuit means for generating apulse in response to a transition of the head over a predeterminedpattern on the storage medium; measurement circuit means for determininga first amplitude of the pulse at a first predetermined time and one ormore second amplitudes of the pulse at respective second predeterminedtimes; and calculation circuit means for providing a signal representingthe distance between the head and the storage medium based on a functionof the first and second amplitudes, wherein the function of the firstand second amplitudes is a logarithm of a ratio of the first amplitudeto a sum of at least two second amplitudes.
 31. An apparatus fordetermining a distance between a head and a storage medium, theapparatus comprising: pulse circuit means for generating a pulse inresponse to a transition of the head over a predetermined pattern on thestorage medium; measurement circuit means for determining a firstamplitude of the pulse at a first predetermined time and one or moresecond amplitudes of the pulse at respective second predetermined times;and calculation circuit means for providing a signal representing thedistance between the head and the storage medium based on a function ofthe first and second amplitudes, wherein a plurality of symbols of dataare stored on the storage medium; wherein the measurement circuit meanstakes samples of the pulse at a baud rate of the symbols of the data;wherein the first amplitude is determined from the one of the samplesnearest a maximum amplitude of the pulse; and wherein the secondamplitudes comprise a previous amplitude determined from the one of thesamples preceding the one of the samples nearest the maximum amplitudeof the pulse, and a succeeding amplitude determined from the one of thesamples succeeding the one of the samples nearest the maximum amplitudeof the pulse.
 32. The apparatus of claim 31: wherein the function of thefirst and second amplitudes is a ratio of the first and secondamplitudes.
 33. An apparatus for determining a distance between a headand a storage medium, the apparatus comprising: pulse circuit means forgenerating a pulse in response to a transition of the head over apredetermined pattern on the storage medium; measurement circuit meansfor determining a first amplitude of the pulse at a first predeterminedtime and one or more second amplitudes of the pulse at respective secondpredetermined times; and calculation circuit means for providing asignal representing the distance between the head and the storage mediumbased on a function of the first and second amplitudes, wherein aplurality of symbols of data are stored on the storage medium; whereinthe measurement circuit means takes samples of the pulse at a baud rateof the symbols of the data; wherein the first amplitude is determinedfrom the one of the samples nearest a maximum amplitude of the pulse;and wherein the second amplitudes comprise an immediately previousamplitude determined from the one of the samples immediately precedingthe one of the samples nearest the maximum amplitude of the pulse, andan immediately succeeding amplitude determined from the one of thesamples immediately succeeding the one of the samples nearest themaximum amplitude of the pulse.
 34. An apparatus for determining adistance between a head and a storage medium, the apparatus comprising:pulse circuit means for generating a pulse in response to a transitionof the head over a predetermined pattern on the storage medium;measurement circuit means for determining a first amplitude of the pulseat a first predetermined time and one or more second amplitudes of thepulse at respective second predetermined times; and calculation circuitmeans for providing a signal representing the distance between the headand the storage medium based on a function of the first and secondamplitudes, wherein a plurality of symbols of data are stored on thestorage medium; wherein the measurement circuit takes samples of thepulse at n times the baud rate of the symbols of the data, where n is aninteger greater than 1; wherein the first amplitude is determined fromthe one of the samples nearest a maximum amplitude of the pulse; andwherein the second amplitudes comprise a previous amplitude determinedfrom the one of the samples preceding the one of the samples nearest themaximum amplitude of the pulse, and a succeeding amplitude determinedfrom the one of the samples succeeding the one of the samples nearestthe maximum amplitude of the pulse.
 35. An apparatus for determining adistance between a head and a storage medium, the apparatus comprising:pulse circuit means for generating a pulse in response to a transitionof the head over a predetermined pattern on the storage medium;measurement circuit means for determining a first amplitude of the pulseat a first predetermined time and one or more second amplitudes of thepulse at respective second predetermined times; and calculation circuitmeans for providing a signal representing the distance between the headand the storage medium based on a function of the first and secondamplitudes, wherein a plurality of symbols of data are stored on thestorage medium; wherein the measurement circuit takes samples of thepulse at n times the baud rate of the symbols of the data, where n is aninteger greater than 1; wherein the first amplitude is determined fromthe one of the samples nearest a maximum amplitude of the pulse; andwherein the second amplitudes comprise a previous amplitude determinedfrom the one of the samples immediately preceding the n−1 of the samplesimmediately preceding the one of the samples nearest the maximumamplitude of the pulse, and a succeeding amplitude determined from theone of the samples immediately succeeding the n−1 of the samplesimmediately succeeding the one of the samples nearest the maximumamplitude of the pulse.
 36. An integrated circuit for determining adistance between a head and a storage medium, the integrated circuitcomprising: measurement circuit means for receiving a pulse from thehead in response to a transition of the head over a predeterminedpattern on the storage medium, and determining a first amplitude of thepulse at a first predetermined time and one or more second amplitudes ofthe pulse at respective second predetermined times; and calculationcircuit means for providing a signal representing the distance betweenthe head and the storage medium based on a function of the first andsecond amplitudes, wherein the function of the first and secondamplitudes is a ratio of the first amplitude to a sum of at least twosecond amplitudes.
 37. An integrated circuit for determining a distancebetween a head and a storage medium, the integrated circuit comprising:measurement circuit means for receiving a pulse from the head inresponse to a transition of the head over a predetermined pattern on thestorage medium, and determining a first amplitude of the pulse at afirst predetermined time and one or more second amplitudes of the pulseat respective second predetermined times; and calculation circuit meansfor providing a signal representing the distance between the head andthe storage medium based on a function of the first and secondamplitudes, wherein the function of the first and second amplitudes is alogarithm of a ratio of the first amplitude to a sum of at least twosecond amplitudes.
 38. An integrated circuit for determining a distancebetween a head and a storage medium, the integrated circuit comprising:measurement circuit means for receiving a pulse from the head inresponse to a transition of the head over a predetermined pattern on thestorage medium, and determining a first amplitude of the pulse at afirst predetermined time and one or more second amplitudes of the pulseat respective second predetermined times; and calculation circuit meansfor providing a signal representing the distance between the head andthe storage medium based on a function of the first and secondamplitudes; wherein a plurality of symbols of data are stored on thestorage medium; wherein the measurement circuit means takes samples ofthe pulse at a baud rate of the symbols of the data; wherein the firstamplitude is determined from the one of the samples nearest a maximumamplitude of the pulse; and wherein the second amplitudes comprise aprevious amplitude determined from the one of the samples preceding theone of the samples nearest the maximum amplitude of the pulse, and asucceeding amplitude determined from the one of the samples succeedingthe one of the samples nearest the maximum amplitude of the pulse. 39.The integrated circuit of claim 38: wherein the function of the firstand second amplitudes is a ratio of the first and second amplitudes. 40.An integrated circuit for determining a distance between a head and astorage medium, the integrated circuit comprising: measurement circuitmeans for receiving a pulse from the head in response to a transition ofthe head over a predetermined pattern on the storage medium, anddetermining a first amplitude of the pulse at a first predetermined timeand one or more second amplitudes of the pulse at respective secondpredetermined times; and calculation circuit means for providing asignal representing the distance between the head and the storage mediumbased on a function of the first and second amplitudes, wherein aplurality of symbols of data are stored on the storage medium; whereinthe measurement circuit takes samples of the pulse at a baud rate of thesymbols of the data; wherein the first amplitude is determined from theone of the samples nearest a maximum amplitude of the pulse; and whereinthe second amplitudes comprise an immediately previous amplitudedetermined from the one of the samples immediately preceding the one ofthe samples nearest the maximum amplitude of the pulse, and animmediately succeeding amplitude determined from the one of the samplesimmediately succeeding the one of the samples nearest the maximumamplitude of the pulse.
 41. An integrated circuit for determining adistance between a head and a storage medium, the integrated circuitcomprising: measurement circuit means for receiving a pulse from thehead in response to a transition of the head over a predeterminedpattern on the storage medium, and determining a first amplitude of thepulse at a first predetermined time and one or more second amplitudes ofthe pulse at respective second predetermined times; and calculationcircuit means for providing a signal representing the distance betweenthe head and the storage medium based on a function of the first andsecond amplitudes, wherein a plurality of symbols of data are stored onthe storage medium; wherein the measurement circuit takes samples of thepulse at n times the baud rate of the symbols of the data, where n is aninteger greater than 1; wherein the first amplitude is determined fromthe one of the samples nearest a maximum amplitude of the pulse; andwherein the second amplitudes comprise a previous amplitude determinedfrom the one of the samples preceding the one of the samples nearest themaximum amplitude of the pulse, and a succeeding amplitude determinedfrom the one of the samples succeeding the one of the samples nearestthe maximum amplitude of the pulse.
 42. An integrated circuit fordetermining a distance between a head and a storage medium, theintegrated circuit comprising: measurement circuit means for receiving apulse from the head in response to a transition of the head over apredetermined pattern on the storage medium, and determining a firstamplitude of the pulse at a first predetermined time and one or moresecond amplitudes of the pulse at respective second predetermined times;and calculation circuit means for providing a signal representing thedistance between the head and the storage medium based on a function ofthe first and second amplitudes, wherein a plurality of symbols of dataare stored on the storage medium; wherein the measurement circuit takessamples of the pulse at n times the baud rate of the symbols of thedata, where n is an integer greater than 1; wherein the first amplitudeis determined from the one of the samples nearest a maximum amplitude ofthe pulse; and wherein the second amplitudes comprise a previousamplitude determined from the one of the samples immediately precedingthe n−1 of the samples immediately preceding the one of the samplesnearest the maximum amplitude of the pulse, and a succeeding amplitudedetermined from the one of the samples immediately succeeding the n−1 ofthe samples immediately succeeding the one of the samples nearest themaximum amplitude of the pulse.
 43. A method comprising: receiving apulse generated in response to a transition of a head over apredetermined pattern on a storage medium; measuring a first amplitudeof the pulse at a first predetermined time and one or more secondamplitudes of the pulse at respective second predetermined times; andcalculating a distance between the head and the storage medium based ona function of the first and second amplitudes, wherein the function ofthe first and second amplitudes is a ratio of the first amplitude to asum of at least two second amplitudes.
 44. A method comprising:receiving a pulse generated in response to a transition of a head over apredetermined pattern on a storage medium; measuring a first amplitudeof the pulse at a first predetermined time and one or more secondamplitudes of the pulse at respective second predetermined times; andcalculating a distance between the head and the storage medium based ona function of the first and second amplitudes, wherein the function ofthe first and second amplitudes is a logarithm of a ratio of the firstamplitude to a sum of at least two second amplitudes.
 45. A methodcomprising: receiving a pulse generated in response to a transition of ahead over a predetermined pattern on a storage medium; measuring a firstamplitude of the pulse at a first predetermined time and one or moresecond amplitudes of the pulse at respective second predetermined times;and calculating a distance between the head and the storage medium basedon a function of the first and second amplitudes; wherein a plurality ofsymbols of data are stored on the storage medium, further comprising:taking samples of the pulse at a baud rate of the symbols of the data;wherein the first amplitude is determined from the one of the samplesnearest a maximum amplitude of the pulse; and wherein the secondamplitudes comprise a previous amplitude determined from the one of thesamples preceding the one of the samples nearest the maximum amplitudeof the pulse, and a succeeding amplitude determined from the one of thesamples succeeding the one of the samples nearest the maximum amplitudeof the pulse.
 46. The method of claim 45: wherein the function of thefirst and second amplitudes is a ratio of the first and secondamplitudes.
 47. A method comprising: receiving a pulse generated inresponse to a transition of a head over a predetermined pattern on astorage medium; measuring a first amplitude of the pulse at a firstpredetermined time and one or more second amplitudes of the pulse atrespective second predetermined times; and calculating a distancebetween the head and the storage medium based on a function of the firstand second amplitudes, wherein a plurality of symbols of data are storedon the storage medium, further comprising: taking samples of the pulseat a baud rate of the symbols of the data; wherein the first amplitudeis determined from the one of the samples nearest a maximum amplitude ofthe pulse; and wherein the second amplitudes comprise an immediatelyprevious amplitude determined from the one of the samples immediatelypreceding the one of the samples nearest the maximum amplitude of thepulse, and an immediately succeeding amplitude determined from the oneof the samples immediately succeeding the one of the samples nearest themaximum amplitude of the pulse.
 48. A method comprising: receiving apulse generated in response to a transition of a head over apredetermined pattern on a storage medium; measuring a first amplitudeof the pulse at a first predetermined time and one or more secondamplitudes of the pulse at respective second predetermined times; andcalculating a distance between the head and the storage medium based ona function of the first and second amplitudes, wherein a plurality ofsymbols of data are stored on the storage medium, further comprisingtaking samples of the pulse at n times the baud rate of the symbols ofthe data, where n is an integer greater than 1; wherein the firstamplitude is determined from the one of the samples nearest a maximumamplitude of the pulse; and wherein the second amplitudes comprise aprevious amplitude determined from the one of the samples preceding theone of the samples nearest the maximum amplitude of the pulse, and asucceeding amplitude determined from the one of the samples succeedingthe one of the samples nearest the maximum amplitude of the pulse.
 49. Amethod comprising: receiving a pulse generated in response to atransition of a head over a predetermined pattern on a storage medium;measuring a first amplitude of the pulse at a first predetermined timeand one or more second amplitudes of the pulse at respective secondpredetermined times; and calculating a distance between the head and thestorage medium based on a function of the first and second amplitudes,wherein a plurality of symbols of data are stored on the storage medium,further comprising wherein the measurement circuit takes samples of thepulse at n times the baud rate of the symbols of the data, where n is aninteger greater than 1; wherein the first amplitude is determined fromthe one of the samples nearest a maximum amplitude of the pulse; andwherein the second amplitudes comprise a previous amplitude determinedfrom the one of the samples immediately preceding the n−1 of the samplesimmediately preceding the one of the samples nearest the maximumamplitude of the pulse, and a succeeding amplitude determined from theone of the samples immediately succeeding the n−1 of the samplesimmediately succeeding the one of the samples nearest the maximumamplitude of the pulse.
 50. The method of claim 49, further comprising:controlling the distance between the head and the storage medium basedon the calculated distance between the head and the storage medium. 51.The method of claim 49, further comprising: generating the pulse inresponse to a transition of a head over a predetermined pattern on astorage medium.
 52. A computer program embodying instructions stored ona computer-readable medium and executable by a computer to perform amethod comprising: receiving a pulse generated in response to atransition of a head over a predetermined pattern on a storage medium;measuring a first amplitude of the pulse at a first predetermined timeand one or more second amplitudes of the pulse at respective secondpredetermined times; and calculating a distance between the head and thestorage medium based on a function of the first and second amplitudes,wherein the function of the first and second amplitudes is a ratio ofthe first amplitude to a sum of at least two second amplitudes.
 53. Acomputer program embodying instructions stored on a computer-readablemedium and executable by a computer to perform a method comprising:receiving a pulse generated in response to a transition of a head over apredetermined pattern on a storage medium; measuring a first amplitudeof the pulse at a first predetermined time and one or more secondamplitudes of the pulse at respective second predetermined times; andcalculating a distance between the head and the storage medium based ona function of the first and second amplitudes, wherein the function ofthe first and second amplitudes is a logarithm of a ratio of the firstamplitude to a sum of at least two second amplitudes.
 54. A computerprogram embodying instructions stored on a computer-readable medium andexecutable by a computer to perform a method comprising: receiving apulse generated in response to a transition of a head over apredetermined pattern on a storage medium; measuring a first amplitudeof the pulse at a first predetermined time and one or more secondamplitudes of the pulse at respective second predetermined times; andcalculating a distance between the head and the storage medium based ona function of the first and second amplitudes, wherein a plurality ofsymbols of data are stored on the storage medium, and wherein the methodfurther comprises: taking samples of the pulse at a baud rate of thesymbols of the data; wherein the first amplitude is determined from theone of the samples nearest a maximum amplitude of the pulse; and whereinthe second amplitudes comprise a previous amplitude determined from theone of the samples preceding the one of the samples nearest the maximumamplitude of the pulse, and a succeeding amplitude determined from theone of the samples succeeding the one of the samples nearest the maximumamplitude of the pulse.
 55. The computer program stored on acomputer-readable medium of claim 54: wherein the function of the firstand second amplitudes is a ratio of the first and second amplitudes. 56.A computer program embodying instructions stored on a computer-readablemedium and executable by a computer to perform a method comprising:receiving a pulse generated in response to a transition of a head over apredetermined pattern on a storage medium; measuring a first amplitudeof the pulse at a first predetermined time and one or more secondamplitudes of the pulse at respective second predetermined times; andcalculating a distance between the head and the storage medium based ona function of the first and second amplitudes, wherein a plurality ofsymbols of data are stored on the storage medium, and wherein the methodfurther comprises: taking samples of the pulse at a baud rate of thesymbols of the data; wherein the first amplitude is determined from theone of the samples nearest a maximum amplitude of the pulse; and whereinthe second amplitudes comprise an immediately previous amplitudedetermined from the one of the samples immediately preceding the one ofthe samples nearest the maximum amplitude of the pulse, and animmediately succeeding amplitude determined from the one of the samplesimmediately succeeding the one of the samples nearest the maximumamplitude of the pulse.
 57. A computer program embodying instructionsstored on a computer-readable medium and executable by a computer toperform a method comprising: receiving a pulse generated in response toa transition of a head over a predetermined pattern on a storage medium;measuring a first amplitude of the pulse at a first predetermined timeand one or more second amplitudes of the pulse at respective secondpredetermined times; and calculating a distance between the head and thestorage medium based on a function of the first and second amplitudes,wherein a plurality of symbols of data are stored on the storage medium,and wherein the method further comprises: taking samples of the pulse atn times the baud rate of the symbols of the data, where n is an integergreater than 1; wherein the first amplitude is determined from the oneof the samples nearest a maximum amplitude of the pulse; and wherein thesecond amplitudes comprise a previous amplitude determined from the oneof the samples preceding the one of the samples nearest the maximumamplitude of the pulse, and a succeeding amplitude determined from theone of the samples succeeding the one of the samples nearest the maximumamplitude of the pulse.
 58. A computer program embodying instructionsstored on a computer-readable medium and executable by a computer toperform a method comprising: receiving a pulse generated in response toa transition of a head over a predetermined pattern on a storage medium;measuring a first amplitude of the pulse at a first predetermined timeand one or more second amplitudes of the pulse at respective secondpredetermined times; and calculating a distance between the head and thestorage medium based on a function of the first and second amplitudes,wherein a plurality of symbols of data are stored on the storage medium,and wherein the method further comprises: wherein the measurementcircuit takes samples of the pulse at n times the baud rate of thesymbols of the data, where n is an integer greater than 1; wherein thefirst amplitude is determined from the one of the samples nearest amaximum amplitude of the pulse; and wherein the second amplitudescomprise a previous amplitude determined from the one of the samplesimmediately preceding the n−1 of the samples immediately preceding theone of the samples nearest the maximum amplitude of the pulse, and asucceeding amplitude determined from the one of the samples immediatelysucceeding the n−1 of the samples immediately succeeding the one of thesamples nearest the maximum amplitude of the pulse.
 59. The computerprogram stored on a computer-readable medium of claim 58, wherein themethod further comprises: controlling the distance between the head andthe storage medium based on the calculated distance between the head andthe storage medium.
 60. The computer program stored on acomputer-readable medium of claim 58, wherein the method furthercomprises: generating the pulse in response to a transition of a headover a predetermined pattern on a storage medium.